package com.material.supplier.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.material.common.annotation.Excel;
import com.material.common.core.domain.BaseEntity;

/**
 * 供应商信息对象 supplier_info
 * 
 * @author ruoyi
 * @date 2025-05-07
 */
public class SupplierInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**
     * 登录账号
     */
    private String loginName;
    /** id */
    private Long id;

    /** 父级id：0表示一级供应商 */
    @Excel(name = "父级id：0表示一级供应商")
    private Long parentId;

    /** 所属工厂 */
    @Excel(name = "所属工厂")
    private Long factoryId;

    /** 供应商名称 */
    @Excel(name = "供应商名称")
    private String name;

    /** 供应商真实姓名 */
    @Excel(name = "供应商真实姓名")
    private String realName;

    /** 手机号 */
    @Excel(name = "手机号")
    private String mobile;

    /** 身份证号 */
    @Excel(name = "身份证号")
    private String idNumber;

    /** 联系地址 */
    @Excel(name = "联系地址")
    private String address;

    /** 平台服务期限 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "平台服务期限", width = 30, dateFormat = "yyyy-MM-dd")
    private Date serviceDate;

    /** 开户行 */
    @Excel(name = "开户行")
    private String bankName;

    /** 银行账号 */
    @Excel(name = "银行账号")
    private String bankNum;

    /** 认证状态：0.未认证，1.已认证 */
    @Excel(name = "认证状态：0.未认证，1.已认证")
    private Integer authStatus;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setParentId(Long parentId) 
    {
        this.parentId = parentId;
    }

    public Long getParentId() 
    {
        return parentId;
    }
    public void setFactoryId(Long factoryId) 
    {
        this.factoryId = factoryId;
    }

    public Long getFactoryId() 
    {
        return factoryId;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setRealName(String realName) 
    {
        this.realName = realName;
    }

    public String getRealName() 
    {
        return realName;
    }
    public void setMobile(String mobile) 
    {
        this.mobile = mobile;
    }

    public String getMobile() 
    {
        return mobile;
    }
    public void setIdNumber(String idNumber) 
    {
        this.idNumber = idNumber;
    }

    public String getIdNumber() 
    {
        return idNumber;
    }
    public void setAddress(String address) 
    {
        this.address = address;
    }

    public String getAddress() 
    {
        return address;
    }
    public void setServiceDate(Date serviceDate) 
    {
        this.serviceDate = serviceDate;
    }

    public Date getServiceDate() 
    {
        return serviceDate;
    }
    public void setBankName(String bankName) 
    {
        this.bankName = bankName;
    }

    public String getBankName() 
    {
        return bankName;
    }
    public void setBankNum(String bankNum) 
    {
        this.bankNum = bankNum;
    }

    public String getBankNum() 
    {
        return bankNum;
    }
    public void setAuthStatus(Integer authStatus) 
    {
        this.authStatus = authStatus;
    }

    public Integer getAuthStatus() 
    {
        return authStatus;
    }

    public String getLoginName() {
        return loginName;
    }

    public void setLoginName(String loginName) {
        this.loginName = loginName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("parentId", getParentId())
            .append("factoryId", getFactoryId())
            .append("name", getName())
            .append("realName", getRealName())
            .append("mobile", getMobile())
            .append("idNumber", getIdNumber())
            .append("address", getAddress())
            .append("serviceDate", getServiceDate())
            .append("bankName", getBankName())
            .append("bankNum", getBankNum())
            .append("authStatus", getAuthStatus())
            .append("createTime", getCreateTime())
            .toString();
    }
}
